<?php

class Usuarios extends CI_Controller {
    public function __construct() {
        parent::__construct();
        $this->load->library(array(
            'form_validation',
            'session'
        ));
        $this->load->model(array(
            'usuarios_model',
            'log_model'
        ));
        $this->load->helper(array(
            'url'
        ));
    }
    
    public function login() {
        $this->form_validation->set_rules('email', 'Email', 'required|valid_email');
        $this->form_validation->set_rules('password', 'Password', 'required');
        
        if($this->form_validation->run() == FALSE) {
            
        } else {
            $usuario = $this->usuarios_model->login($this->input->post('email'), $this->input->post('password'));
            if(!empty($usuario)) {
                $datos = array(
                    'SID' => $usuario['idusuario'],
                    'usuario' => $usuario['usuario'],
                    'nombre' => $usuario['nombre'],
                    'apellido' => $usuario['apellido'],
                    'tipousuario' => $usuario['idtipousuario']
                );
                
                $this->session->set_userdata($datos);
                
                $session = $this->session->all_userdata();
                
                $log = array(
                    'idusuario' => $session['SID'],
                    'tabla' => 'usuarios',
                    'iddelatabla' => 'idusuario',
                    'idtabla' => $session['SID'],
                    'texto' => 'Se logueó el usuario:
Usuario: '.$session['usuario'].'
Nombre: '.$session['nombre'].'
Apellido: '.$session['apellido']
                );
            
                $this->log_model->set($log);
                
                redirect('/home/', 'refresh');
            }
        }
        $this->load->view('usuarios/login');
    }
    
    public function logout() {
        $session = $this->session->all_userdata();
        if(empty($session['SID'])) {
            redirect('/usuarios/login/', 'refresh');
        }
        
        $log = array(
                    'idusuario' => $session['SID'],
                    'tabla' => 'usuarios',
                    'iddelatabla' => 'idusuario',
                    'idtabla' => $session['SID'],
                    'texto' => 'Se desconectó el usuario:
Usuario: '.$session['usuario'].'
Nombre: '.$session['nombre'].'
Apellido: '.$session['apellido']
                );
            
                $this->log_model->set($log);
        $this->session->sess_destroy();
        redirect('/usuarios/login/', 'refresh');
    }
    
}
?>
